﻿namespace LimitatorInterfaces
{
    /// <summary>
    /// Лимит клиента в торговой системе
    /// </summary>
    public interface ILimitEntity
    {
        /// <summary>
        /// Код клиента
        /// </summary>
        string ClientCode { get;  }

        /// <summary>
        /// Значение лимита
        /// </summary>
        decimal Value { get;  }

        /// <summary>
        /// Деньги / не деньги
        /// </summary>
        bool IsMoney { get; }

        /// <summary>
        /// Код актива
        /// </summary>
        string ActiveCode { get; }

        /// <summary>
        /// Торговая система
        /// </summary>
        string TradeSystem { get;}
        
        /// <summary>
        /// Создание нового лиита на основе тукущего
        /// </summary>
        ILimitEntity Clone();

        /// <summary>
        /// Установка занчения лимита
        /// </summary>
        /// <param name="val"></param>
        void SetValue(decimal val);
    }
}
